#ifndef __NIL_MOMOK_FILM_H__
#define __NIL_MOMOK_FILM_H__

#include <vector>

namespace rt {

class Color;

class Film
{
public:
    Film();
    virtual ~Film();

    std::vector<Color>::const_iterator begin() const;
    std::vector<Color>::const_iterator end()   const;

    std::vector<Color>::iterator begin();
    std::vector<Color>::iterator end();

    std::size_t size() const;
    const std::size_t& width() const;
    const std::size_t& height() const;

private:

    std::size_t m_width;
    std::size_t m_height;

    double      m_real_width_mm;
    double      m_real_height_mm;

    std::vector<Color> m_data;
};

} //end of namespace

#endif //__NIL_MOMOK_FILM_H__
